#Lua 的 while 循环语句
循环语句是一种让程序重复执行一段代码的控制结构。
Lua 的 while
循环语句语法结构为:
while 条件 do
代码块
end
- 判断“条件”是否为
true
- 如果为
true
则执行循环体,然后进入下一轮循环 - 如果为
false
则结束循环
- 如果为
示例:
local i = 5
while i > 0 do -- 当 i 大于 0 时执行循环
print("当前 i 的值为", i)
i = i - 1 -- 将 i 的值减少 1
end
运行结果:
当前 i 的值为 5 当前 i 的值为 4 当前 i 的值为 3 当前 i 的值为 2 当前 i 的值为 1
#break
break
用于用于终止当前循环(包括 while
以外的循环),继续执行循环之后的代码。
示例:
local i = 10
while i > 0 do -- 当 i 大于 0 时执行循环
if i == 5 then
break -- 提前结束循环
end
print("当前 i 的值为", i)
i = i - 1 -- 将 i 的值减少 1
end
运行结果:
当前 i 的值为 10 当前 i 的值为 9 当前 i 的值为 8 当前 i 的值为 7 当前 i 的值为 6
#goto
goto
可以将程序的执行跳转到指定的位置。
语法为:
goto 标签
其中标签的定义方式为两对冒号:
::标签::
和大多数编程语言不同, Lua 不支持 continue,下面的示例通过 goto
实现类似的功能:
local i = 10
while i > 0 do -- 当 i 大于 0 时执行循环
if i % 2 == 0 then
goto continue -- 跳转到 continue 标签位置
end
print("当前 i 的值为", i)
::continue::
i = i - 1 -- 将 i 的值减少 1
end
运行结果:
当前 i 的值为 9 当前 i 的值为 7 当前 i 的值为 5 当前 i 的值为 3 当前 i 的值为 1